import cv2
import numpy as np


def remove_watermark(input_path, output_path):
    # 读取老的图片为像素
    img = cv2.imread(input_path)
    # 2.获取图片的尺寸 获取高度和宽度
    height, width = img.shape[:2]
    # 3. 计算水印的区域
    # 水印的高度占总高度的10%
    watermark_height = int(height * 0.1)
    # 水印的宽度占总宽度的20%
    watermark_width = int(height * 0.2)
    # 4.创建掩码就是标记水印区域
    mask = np.zeros((height, width), np.uint8)  # 每个像素点都是0全黑
    # 5.把水印区域标记为白色
    mask[height - watermark_height : height, width - watermark_width : width] = 255
    # 6.使用算法去除水印
    result = cv2.inpaint(img, mask, 5, cv2.INPAINT_TELEA)
    # 7.保存结果
    cv2.imwrite(output_path, result)


remove_watermark(
    "D:/aproject/douyin/tao.jpg", "D:/aproject/douyin/tao_no_watermark.jpg"
)
